查看原文
其他

车辆通信的网络安全

哆啦安全 2022-12-05

The following article is from 智能汽车开发者平台 Author Manjula R Parmar

摘要

在汽车行业,网络安全的实施程度很低。一辆汽车有多个电子控制单元(ECU),每个ECU通过控制区网络(CAN)与另一个ECU进行大量的信息交流。如果黑客入侵系统,那么它就像一个开放的资源来源,任何有价值的信息都可以被操纵。这可能会导致巨大的损失。这是一个验证各种现有网络安全功能的动机,了解系统,然后实施网络安全功能。本文讨论了密钥槽验证设计、最大权威计数器验证设计和用户模式实现。汽车工业的发展采用了汽车开放系统架构(AUTOSAR)平台。

I.简介

近年来,正如人们所看到的,机械系统正在被电子元件所取代。现在,汽车不再是一个机械装置和一个电子设备,连接性使它成为一个物联网(IOT)设备。在汽车行业,一辆汽车有许多电子控制单元(ECU)。这些ECU已被编程以执行许多功能。早期的网络安全问题只是用计算机进行各种攻击的黑客。如今,有许多网络安全功能在非计算机上实现,例如,家用电器、交通、公用事业以及各行业。随着每个设备都在向自动化和物联网方向发展,许多工厂和行业都在发展。随着连接性的增加,物联网概念在汽车行业得到了广泛的应用。这种连接性的增加也增加了网络风险,这是一个严重的问题,也是一个社会问题。ECU被编程了许多功能,这些功能被用于汽车中,如驾驶辅助、安全气囊和许多其他应用。这些ECU通过控制区网络(CAN)相互连接,这是广泛用于车辆的通信协议。在CAN总线上有许多信息传输,而某些信息与安全有非常重要的关系。如果这些安全信号在CAN总线上被操纵,对车辆的影响是危险的,车辆没有安全保障将导致巨大的风险。


II.理论和方法
A.安全通信
发射器ECU和接收器ECU通过CAN总线连接。发射器有硬件安全模块(HSM),它能够计算出信息验证码(MAC)。HSM计算MAC的输入是时间戳和信息或有效载荷。MAC被生成并与信息和时间戳一起发送给接收方ECU。接收器也与HSM相关联,它有能力验证发射器通过CAN总线发送的MAC。一旦MAC被HSM验证,信息就被接收器接受。
在这种情况下,时间戳显示为7'O clock,如图1所示。有一个黑客ECU监视着总线,并有意在总线上捕获信息。当黑客ECU捕获信息时,很明显,MAC和时间戳7'O时钟也从总线上被捕获。现在,黑客ECU以不同的时间戳发送相同的信息。图1中的不同时间戳是9'O时钟。在9点钟,黑客ECU通过CAN总线向接收器发送相同的信息。当接收方在验证MAC时,时间戳不匹配。接收者没有关于不同时间戳的信息。因此,该信息被拒绝。
图1. 信息认证
现在,可能有这样的情况:发射器和接收器之间有时间延迟,信息连同MAC和时间戳到达接收器时有一些延迟。这不会有任何问题,因为时间戳只不过是一个计数器而已。计算MAC的计数值和接收方关于该计数值的信息将保持不变。接收方的计数器值不会递增。因此,即使总线上有一定的延迟,MAC也会被接收器验证。
B.基于密码的信息验证码
基于密码的信息验证码(CMAC)是一种用于MAC生成和验证的算法。这种算法在ECU的硬件安全模块(HSM)中进行。如图2所示,CMAC算法与发射器的对应密钥槽相耦合。有效载荷或信息和防重放计数器被作为输入给CMAC算法以生成MAC。这是与安全信息相关的计数器。因此,CMAC算法的输入是有效载荷和防重放计数器。每一个安全发射器信息都与一个密钥槽相关。
图2. CMAC生成
钥匙槽也被称为密钥ID。密钥ID是提供钥匙的槽位。在提供的钥匙槽中提供钥匙,然后设置MAC标志。有一些内部值被设置为MAC Only flag。该标志用于生成MAC。这些生成的密钥与CMAC算法相连,该算法将生成以有效载荷和防重放计数器为输入的MAC。用于MAC验证的值是不同的,该标志值只能验证MAC。与安全发射器信息相比,安全接收者信息被赋予不同的密钥ID。“MAC验证”的值在提供密钥后设置。MAC验证标志有一个设置好的内部值。这个过程将生成MAC验证的密钥。因此,这些密钥被耦合到CMAC层,用于MAC生成或MAC验证。
C.用户模式和管理模式
两种特权模式的操作是管理模式和用户模式。监督员模式将可以访问所有的资源控制操作。它就像一个管理员,拥有所有内存位置的读、写和可执行权限。
所有的任务都在一个单一的平台上运行,除了管理员,没有人可以改变任何任务、任何代码或任何配置。这使得该系统非常僵硬。在汽车工业中,汽车中的电子设备之一是ECU。这个ECU只在监督员模式下运行。寄存器和内存位置只能在监督员模式下访问。所有的应用程序都在监督员模式下运行。
当处理器在用户模式下运行时,它对系统的访问将受到限制。如果实施了用户模式,那么在这种模式下,用户将有对资源控制操作有限的访问权,某些内存位置将有有限的权限。要了解从管理模式切换到用户模式,并检索到管理模式。了解机器状态寄存器(MSR)是很重要的。这个MSR决定了处理器的状态。MSR是一个32位的寄存器。MSR中的问题状态寄存器(PR)位表示处理器是处于用户模式还是监督模式。如果PR位=0,处理器处于管理模式。如果PR位=1,处理器在用户模式下运行。
ECU在监督员模式下运行。其中一个功能将被定义为在用户模式下运行。因此,代码是在该功能中开发的,以便ECU在用户模式下运行该特定功能。当代码正在执行时,MSR的PR位被设置为1,而不会干扰MSR中的任何其他位。将PR位改为1后,ECU现在在用户模式下运行。如果ECU必须切换回管理模式,则必须执行系统调用或中断,以将MSR寄存器的PR位更改为零。
图3. 用户模式概念

MSR将其值存储在特殊用途寄存器(SPR)中,同时执行系统调用。SPR的作用是将MSR值的PR位位置改为1。当MSR从SPR中检索到它的值时。对它的指示,是保持在管理模式,因为MSR的PR位将是1。这个概念证明了可以从管理模式切换到用户模式,反之亦然。通过使用这个概念,用户和管理模式可以在ECU中成功实现。


III.设计

本节将解释网络安全三个功能的设计,前两个设计将证明现有的代码运行良好。第三个设计是ECU中用户模式的实现。
A.钥匙槽验证
验证任何一个ECU都不得使用安全外围设备内的同一密钥槽来生成和验证MAC。ECU已被校准以生成有效的非零MAC。已使用不同的密钥来生成和验证MAC。
行动
触发ECU发送安全信息。选择由ECU在总线上发送的安全发射器信息,并形成必要的数据发送到MAC生成接口操纵应用程序代码,将密钥槽号为4的数据发送至MAC 生成与接收方信息密钥槽号相对应的密钥槽接口。密钥槽验证的设计如图4所示。
图4. 密钥槽验证设计
设计显示,密钥槽号11、12、13、14、15是接收信息的密钥槽号,这些密钥槽被强制放在密钥槽号4上,一次一个。MAC生成的密钥闪光,这些密钥与密钥槽11、12、13、14、15相关。这些钥匙应该被生成。这个动作将触发错误。这个错误就是无效的钥匙。所有的钥匙槽都经过验证,每次使用不同的接收器钥匙槽时,应用程序代码都会提供相同的错误。
B.最具权威性的反核查
确保ECU在权威性计数器达到最大值时设置一个DTC,并发送零MAC。
行动
触发ECU来发送安全信息。验证ECU正在发送它所支持的所有发送器信息。选择一个安全的发送器信息,并操作应用程序代码,将相应的权威计数器设置为其最大值。
图5. 最具权威性计数器验证设计图

权威的计数器是与安全发射器信息相关的内部计数器。如果该计数器达到其最大值,那么应用代码应该设置诊断故障代码(DTC)。还可以观察到,选定的安全发射器信息中的MAC值应该是零。当代码中出现错误时,DTC就是设定的。DTC可以被设置为各种错误,通过这个应用层提示某些内容没有按照预期工作。


IV.用户模式验证

最初,ECU将在管理模式下执行功能。在管理模式的功能结束时,会引入一个链式任务,并将一个用户模式定义的功能作为参数给出。这些函数不能在用户模式下访问寄存器,因为它们是不被信任的函数,所以引入了包装器,如图6所示,它显示了用户模式的实现设计。
这些是映射到可信函数的不信任函数,以调用原始函数,在用户模式下执行。当包装器在函数中被调用时。它应该在实时操作系统(RTOS)中进行配置,这些函数被配置为可信函数。
这样就可以访问寄存器和函数,在用户模式下执行。现在,为了将运行在用户模式下的ECU切换到管理模式,在用户模式函数的末端调用一个链式任务,传递给它的参数是管理模式函数。
图6. 用户模式的实现设计

因此,ECU将以管理模式运行。在函数执行结束时,会调用一个终止链任务,该任务将终止该进程。


V.结果

所有三种设计的结果都显示在本节中。A.密钥槽位验证结果CAN总线通常在传输所有的发射器和接收器信息,如ECU所规定的。这些信息将包含分配给每个信息的原始密钥槽。选定的安全发射器信息包含密钥槽ID为4,这是最初分配的密钥ID。不会有任何错误。该测试案例也没有启用。图7. 密钥槽验证的结果现在,测试案例被启用,接收器的钥匙槽ID,一次一个被强制送到特定选择的发射器信息的应用代码中。在图7中,接收器的钥匙槽号11、12、13、14、15是强制的。在提供钥匙后,应用程序代码会出现错误。出现的错误是INVALID KEY。在这种情况下,发射器信息2被迫接受改变了的钥匙槽11、12、13、14、15。所有的接收器钥匙槽ID都给出了同样的错误,因此,这将证明,当接收器钥匙槽被强制取代发射器钥匙槽时,没有一个ECU能够发挥作用。B.最具权威性的计数器结果发射器指数2的选择是为了使权威的计数器达到最大。这将导致为安全发送器信息2设置DTC,并且传输的MAC值也为零。这在图8中显示。图8. 最大权威性计数器的验证结果结果证明,测试案例是经过验证成功的。DTC也被设置,并且该特定信息的MAC值为零。其他信息通常会执行一个有效的MAC。C.用户模式的结果图9显示了管理模式的结果。决定ECU状态的寄存器是MSR。在图9中,MSR的值是00009000。这表明第17位是0,也就是确定监督员模式的PR位。图9. 管理模式的结果如图10所示,MSR寄存器的值是00029000。这清楚地表明,MSR的PR位等于1,这代表处理器运行在用户模式下。 图10. 管理模式的结果

所有其他的位子都没有受到影响,ECU有能力在用户和监管理模式下切换和执行功能。它甚至能够访问所需的特权寄存器和内存位置。


VI.总结

由于攻击率高,网络安全只出现在计算机中。现在,车辆通信中的网络安全已经成为汽车行业不可或缺的一部分。没有钥匙,就没有安全。因此,钥匙在有关安全的HSM中起着重要作用。目前只讨论、设计和实现了三个功能,但汽车行业的网络安全是一项巨大的研究课题。实现了许多功能,每一个功能都需要对AUTOSAR、CAN通信和许多其他功能的平台有深入的了解。一旦理解了这些特性,就可以设计和实现其他安全特性。

参考文献:

[1]Jin Hyun Kim, Inhye Kang, Sungwon Kang and Abdeld- jalid Boudjadar “A Process Algebraic Approach to Resource

– Parameterized timing Analysis of Automotive Software Architecture”. IEEE Transaction on Industrial Informatics, VOL. 12, NO. 2, April 2016.

[2]Simon Schliecker, Jonas Rox, Mircea Negrean, Kai Richter, Marek Jersak and Rolf Ernst, “System Level Per- formance Analysis for Real-Time Automotive Multicore and Network Architecture”. IEEE Transaction on Computer-Aided of Integrated Circuits and System, VOL. 28, NO. 7, July 2009.

[3]Yong Xie, Gang Zeng, Ryo Kurachi, Hiroaki Takada and Guoqi Xie, “ Security/Timing- Aware Design Space Explo- ration of CAN FD for Automotive Cyber Physical Systems”.

IEEE Transaction on Industrial Informatics, VOL. 15, NO. 2, February 2019.

[4]Wonsuk Choi, Hyo Jin Jo, Samuel Woo, Ji Young Chun, Jooyoung Park and Dong Hoon Lee, “Identifying ECUs Using Inimitable Characteristics of Signal in the Control Area Network”. IEEE Transaction on Vehicular Technology, VOL. 67, NO. 6, JUNE 2018.

[5]Hengchuan Tan, Maode Ma, Houda Labiod, Aymen Boudguiga, Jun Zang and Peter Han Joo Chong, “ A Secure and Authentication Key Management Protocol (SA-KMP) for Vehicular Networks”. IEEE Transaction on Vehicular Technol- ogy, VOL. 65, NO. 12, December 2016.

[6]Xui Yi, San Ling and Huaxiong Wang, “Efficient Two Server Password Only Authenticated Key Exchange”. IEEE Transaction on Parallel and Distributed Systems, VOL. 24, NO. 9, September 2013.

[7]Xiaofu Wu, Zhen Yang, Cong Ling and  Xiang-Gen Xia, “Artificial-Noise-Aided Message Authentication Codes with Information-Theoretic Security”. IEEE Transaction on Information Forensics and Security, VOL. 11, NO. 6, June 2011.

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存